package com.neo.impatient.C02_flowControl.C02_07_function

object FunDef {


  /**
    * 非递归函数可以自动推导出返回值,递归函数必须指定返回值
    * 单个表达式可以不用代码块
    * @param x
    * @return
    */
  def abs ( x : Double) = if (x >=  0) x else -x


  /**
    * 多个表达式可以用代码块,大括号包起来
    * @param n
    * @return
    */
  def fac(n: Int) = {
    var r = 1
    for(i <- 1.to(n)) r = r * i
    r
  }


  def main(args: Array[String]): Unit = {
    println(abs(4))
    print(fac(3))
  }
}
